package com.xbongbong.pro.enums.menu.enums;

import com.xbongbong.i18n.util.I18nMessageUtil;
import com.xbongbong.paas.constant.PaasConstant;
import com.xbongbong.paas.enums.MenuTypeEnum;
import com.xbongbong.pro.enums.AccessLinkEnum;
import com.xbongbong.saas.enums.XbbRefTypeEnum;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;

/**
 * @Author mingliang
 * @Description 精线索菜单
 * @Date 2021/10/26 14:41
 **/
@Getter
@NoArgsConstructor
@AllArgsConstructor
public enum FineClueMenuEnum {

    //查企业
    FINE_CLUE_QUERY_COMPANY(XbbRefTypeEnum.FINE_CLUE_QUERY_COMPANY.getI18nName(), XbbRefTypeEnum.FINE_CLUE_QUERY_COMPANY.getAlias(),
            XbbRefTypeEnum.FINE_CLUE_QUERY_COMPANY.getCode(), AccessLinkEnum.FINE_CLUE_QUERY_COMPANY, PaasConstant.HOME_STRING, MenuTypeEnum.MENU.getType()),
    //找线索
    FINE_CLUE_QUERY_CLUE(XbbRefTypeEnum.FINE_CLUE_QUERY_CLUE.getI18nName(), XbbRefTypeEnum.FINE_CLUE_QUERY_CLUE.getAlias(),
            XbbRefTypeEnum.FINE_CLUE_QUERY_CLUE.getCode(), AccessLinkEnum.FINE_CLUE_QUERY_CLUE, PaasConstant.HOME_STRING, MenuTypeEnum.MENU.getType()),
    //地图检索
    FINE_CLUE_MAP_QUERY(XbbRefTypeEnum.FINE_CLUE_MAP_QUERY.getI18nName(), XbbRefTypeEnum.FINE_CLUE_MAP_QUERY.getAlias(),
            XbbRefTypeEnum.FINE_CLUE_MAP_QUERY.getCode(), AccessLinkEnum.FINE_CLUE_MAP_QUERY, PaasConstant.HOME_STRING, MenuTypeEnum.MENU.getType()),
    //批量查企业
    FINE_CLUE_BATCH_QUERY(XbbRefTypeEnum.FINE_CLUE_BATCH_QUERY.getI18nName(), XbbRefTypeEnum.FINE_CLUE_BATCH_QUERY.getAlias(),
            XbbRefTypeEnum.FINE_CLUE_BATCH_QUERY.getCode(), AccessLinkEnum.FINE_CLUE_BATCH_QUERY, PaasConstant.HOME_STRING, MenuTypeEnum.MENU.getType()),
    //权限管理
    FINE_CLUE_PERMISSIONS(XbbRefTypeEnum.FINE_CLUE_PERMISSIONS.getI18nName(), XbbRefTypeEnum.FINE_CLUE_PERMISSIONS.getAlias(),
            XbbRefTypeEnum.FINE_CLUE_PERMISSIONS.getCode(), AccessLinkEnum.FINE_CLUE_PERMISSIONS, "controlCenter", MenuTypeEnum.MENU.getType());

    /**
     * 名称
     */
    private String name;

    /**
     * saas业务标识
     */
    private String alias;

    /**
     * saas业务标识
     */
    private Integer code;
    /**
     * 地址
     */
    private AccessLinkEnum accessLinkEnum;

    /**
     * 所属于哪个页面，home：首页；controlCenter：管理中心
     */
    private String belong;

    /**
     * 类型
     * @see MenuTypeEnum
     */
    private Integer type;

    public String getName() {
        return I18nMessageUtil.getMessage(name);
    }

}
